package com.southminority.ethnic.dto;

import lombok.Data;
import lombok.EqualsAndHashCode;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import java.time.LocalDateTime;

/**
 * 新闻公告DTO
 * 
 * @author SouthMinority
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class NewsDTO extends BaseDTO {

    /**
     * 标题
     */
    @NotBlank(message = "标题不能为空")
    @Size(max = 200, message = "标题长度不能超过200个字符")
    private String title;

    /**
     * 内容
     */
    private String content;

    /**
     * 摘要
     */
    @Size(max = 500, message = "摘要长度不能超过500个字符")
    private String summary;

    /**
     * 封面图片
     */
    private String coverImage;

    /**
     * 作者ID
     */
    private Long authorId;

    /**
     * 作者姓名
     */
    @Size(max = 50, message = "作者姓名长度不能超过50个字符")
    private String authorName;

    /**
     * 分类
     */
    @Size(max = 50, message = "分类长度不能超过50个字符")
    private String category;

    /**
     * 标签
     */
    @Size(max = 200, message = "标签长度不能超过200个字符")
    private String tags;

    /**
     * 是否置顶：1-是，0-否
     */
    private Integer isTop;

    /**
     * 发布时间
     */
    private LocalDateTime publishTime;

    /**
     * 状态：1-已发布，0-草稿，-1-已删除
     */
    private Integer status;
} 
